The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the inventors hereof, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
A solid state drive (SSD) reads and writes data from devices such as NAND flash memory devices or dynamic random access memory (DRAM) devices that may be implemented using a RAID architecture. The SSD typically includes an SSD controller with a number of data channels for transferring data to and from the NAND flash memory. Further, the SSD controller typically executes firmware that manages data in fixed byte size units known as allocation units (AUs). Traditionally, data is written to a given page of the NAND flash memory in a single operation and the write operation includes a number of bytes that is an integer multiple of the size of an AU. Thus, when a page size of the NAND flash is not an integer multiple of the AU size, the memory of the NAND flash may be underutilized.